home *** CD-ROM | disk | FTP | other *** search
/ CD Fun House 1 / CD Fun House (Wayzata Technology).iso / •The Arcade• / New WizFire 1.20 •••• / New WizFire 1.20 ееее.rsrc / DRVR_30_.Con.txt < prev    next >
Text File  |  1985-08-05  |  66KB  |  1,206 lines

  1. # name: .Con
  2. # flags: 0x0F00 (ENABLE_READ, ENABLE_WRITE, ENABLE_CONTROL, ENABLE_STATUS)
  3. # delay: 0
  4. # event mask: 0x0028
  5. # menu id: 0
  6. # open label: 0000
  7. # prime label: 0010
  8. # control label: 0020
  9. # status label: 0020
  10. # close label: 000C
  11. open:
  12. 00000000  48E7 00C0                movem.l    -[A7], A0,A1
  13. 00000004  4EBA 002E                jsr        [PC + 0x2E /* 00000034 */]
  14. 00000008  504F                     addq.w     A7, 8
  15. 0000000A  4E75                     rts
  16. close:
  17. 0000000C  7000                     moveq.l    D0, 0x00
  18. 0000000E  4E75                     rts
  19. prime:
  20. 00000010  48E7 00C0                movem.l    -[A7], A0,A1
  21. 00000014  2055                     movea.l    A0, [A5]
  22. 00000016  2F10                     move.l     -[A7], [A0]
  23. 00000018  4EBA 01A4                jsr        [PC + 0x1A4 /* 000001BE */]
  24. 0000001C  584F                     addq.w     A7, 4
  25. 0000001E  6008                     bra        +0xA /* 00000028 */
  26. control:
  27. status:
  28. 00000020  48E7 00C0                movem.l    -[A7], A0,A1
  29. 00000024  4EBA 029A                jsr        [PC + 0x29A /* 000002C0 */]
  30. label00000028:
  31. 00000028  4CDF 0300                movem.l    A0,A1, [A7]+
  32. 0000002C  2F38 08FC                move.l     -[A7], [0x000008FC /* JIODone */]
  33. 00000030  4E75                     rts
  34. 00000032  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  35. // begin alternate branch 00000034-00000042
  36. fn00000034:
  37. 00000034  4E56 0000                link       A6, 0
  38. 00000038  48E7 0E18                movem.l    -[A7], D4,D5,D6,A3,A4
  39. 0000003C  246E 000C                movea.l    A2, [A6 + 0xC]
  40. 00000040  2F12                     move.l     -[A7], [A2]
  41. // end alternate branch 00000034-00000042
  42. fn00000034: // (misaligned)
  43. 00000036  0000 48E7                ori.b      D0, 0xE7
  44. 0000003A  0E18 246E                .invalid.b [A0]+, 0x6E /* 'n' */ // invalid immediate operation
  45. 0000003E  000C 2F12                ori.b      A4, 0x12
  46. 00000042  4EBA 0C1A                jsr        [PC + 0xC1A /* 00000C5E */]
  47. 00000046  584F                     addq.w     A7, 4
  48. 00000048  246E 000C                movea.l    A2, [A6 + 0xC]
  49. 0000004C  4AAA 0014                tst.l      [A2 + 0x14]
  50. 00000050  670A                     beq        +0xC /* 0000005C */
  51. 00000052  7000                     moveq.l    D0, 0x00
  52. label00000054:
  53. 00000054  4CDF 1870                movem.l    D4,D5,D6,A3,A4, [A7]+
  54. 00000058  4E5E                     unlink     A6
  55. 0000005A  4E75                     rts
  56. label0000005C:
  57. 0000005C  A8FE                     syscall    InitFonts
  58. 0000005E  4EBA 00E8                jsr        [PC + 0xE8 /* 00000148 */]
  59. 00000062  2840                     movea.l    A4, D0
  60. 00000064  4A80                     tst.l      D0
  61. 00000066  6748                     beq        +0x4A /* 000000B0 */
  62. 00000068  246E 000C                movea.l    A2, [A6 + 0xC]
  63. 0000006C  254C 0014                move.l     [A2 + 0x14], A4
  64. 00000070  2654                     movea.l    A3, [A4]
  65. 00000072  262B 0028                move.l     D3, [A3 + 0x28]
  66. 00000076  96AB 002C                sub.l      D3, [A3 + 0x2C]
  67. 0000007A  3C03                     move.w     D6, D3
  68. 0000007C  4A43                     tst.w      D3
  69. 0000007E  6726                     beq        +0x28 /* 000000A6 */
  70. 00000080  262B 0024                move.l     D3, [A3 + 0x24]
  71. 00000084  96AB 0028                sub.l      D3, [A3 + 0x28]
  72. 00000088  3F03                     move.w     -[A7], D3
  73. 0000008A  2F2B 002C                move.l     -[A7], [A3 + 0x2C]
  74. 0000008E  2F2B 0028                move.l     -[A7], [A3 + 0x28]
  75. 00000092  4EBA 0BFA                jsr        [PC + 0xBFA /* 00000C8E */]
  76. 00000096  DEFC 000A                add.w      A7, 0xA /* '\n' */
  77. 0000009A  276B 002C 0028           move.l     [A3 + 0x28], [A3 + 0x2C]
  78. 000000A0  48C6                     ext.l      D6
  79. 000000A2  9DAB 0024                sub.l      [A3 + 0x24], D6
  80. label000000A6:
  81. 000000A6  276B 002C 0020           move.l     [A3 + 0x20], [A3 + 0x2C]
  82. 000000AC  7000                     moveq.l    D0, 0x00
  83. 000000AE  60A4                     bra        -0x5A /* 00000054 */
  84. label000000B0:
  85. 000000B0  4EBA 0B9C                jsr        [PC + 0xB9C /* 00000C4E */]
  86. 000000B4  2A00                     move.l     D5, D0
  87. 000000B6  4EBA 0BCE                jsr        [PC + 0xBCE /* 00000C86 */]
  88. 000000BA  2F00                     move.l     -[A7], D0
  89. 000000BC  4EBA 0BBE                jsr        [PC + 0xBBE /* 00000C7C */]
  90. 000000C0  584F                     addq.w     A7, 4
  91. 000000C2  2F3C 0000 0081           move.l     -[A7], 0x81
  92. 000000C8  4EBA 0BF4                jsr        [PC + 0xBF4 /* 00000CBE */]
  93. 000000CC  584F                     addq.w     A7, 4
  94. 000000CE  2800                     move.l     D4, D0
  95. 000000D0  2F3C 0000 0030           move.l     -[A7], 0x30 /* '0' */
  96. 000000D6  4EBA 0B9A                jsr        [PC + 0xB9A /* 00000C72 */]
  97. 000000DA  584F                     addq.w     A7, 4
  98. 000000DC  2840                     movea.l    A4, D0
  99. 000000DE  2F05                     move.l     -[A7], D5
  100. 000000E0  4EBA 0B9A                jsr        [PC + 0xB9A /* 00000C7C */]
  101. 000000E4  584F                     addq.w     A7, 4
  102. 000000E6  260C                     move.l     D3, A4
  103. 000000E8  6704                     beq        +0x6 /* 000000EE */
  104. 000000EA  4A84                     tst.l      D4
  105. 000000EC  6606                     bne        +0x8 /* 000000F4 */
  106. label000000EE:
  107. 000000EE  70FF                     moveq.l    D0, 0xFFFFFFFF
  108. 000000F0  6000 FF62                bra        -0x9C /* 00000054 */
  109. label000000F4:
  110. 000000F4  246E 000C                movea.l    A2, [A6 + 0xC]
  111. 000000F8  254C 0014                move.l     [A2 + 0x14], A4
  112. 000000FC  2654                     movea.l    A3, [A4]
  113. 000000FE  2744 002C                move.l     [A3 + 0x2C], D4
  114. 00000102  277C 2E43 4F4E 0004      move.l     [A3 + 0x4], 0x2E434F4E /* '.CON' */
  115. 0000010A  36BC 08F4                move.w     [A3], 0x8F4
  116. 0000010E  177C 0008 0002           move.b     [A3 + 0x2], 0x8
  117. 00000114  177C 0018 0003           move.b     [A3 + 0x3], 0x18
  118. 0000011A  377C FFFF 0010           move.w     [A3 + 0x10], 0xFFFF
  119. 00000120  377C FFFF 000E           move.w     [A3 + 0xE], 0xFFFF
  120. 00000126  422B 000C                clr.b      [A3 + 0xC]
  121. 0000012A  422B 000D                clr.b      [A3 + 0xD]
  122. 0000012E  377C 0001 000A           move.w     [A3 + 0xA], 0x1
  123. 00000134  426B 0008                clr.w      [A3 + 0x8]
  124. 00000138  2744 0028                move.l     [A3 + 0x28], D4
  125. 0000013C  2744 0024                move.l     [A3 + 0x24], D4
  126. 00000140  2744 0020                move.l     [A3 + 0x20], D4
  127. 00000144  6000 FF0E                bra        -0xF0 /* 00000054 */
  128. fn00000148:
  129. 00000148  4E56 0000                link       A6, 0
  130. 0000014C  48E7 0C18                movem.l    -[A7], D4,D5,A3,A4
  131. 00000150  2878 02A6                movea.l    A4, [0x000002A6 /* SysZone */]
  132. 00000154  D9FC 0000 0034           add.l      A4, 0x34 /* '4' */
  133. label0000015A:
  134. 0000015A  2478 02A6                movea.l    A2, [0x000002A6 /* SysZone */]
  135. 0000015E  B9D2                     cmpa.l     A4, [A2]
  136. 00000160  6458                     bcc        +0x5A /* 000001BA */
  137. 00000162  2A14                     move.l     D5, [A4]
  138. 00000164  2605                     move.l     D3, D5
  139. 00000166  7418                     moveq.l    D2, 0x18
  140. 00000168  E4A3                     asr        D3, D2
  141. 0000016A  3803                     move.w     D4, D3
  142. 0000016C  CABC 00FF FFFF           and.l      D5, 0xFFFFFF
  143. 00000172  3604                     move.w     D3, D4
  144. 00000174  C67C 00C0                and.w      D3, 0xC0
  145. 00000178  B67C 0080                cmp.w      D3, 0x80
  146. 0000017C  6638                     bne        +0x3A /* 000001B6 */
  147. 0000017E  2605                     move.l     D3, D5
  148. 00000180  5183                     subq.l     D3, 8
  149. 00000182  3404                     move.w     D2, D4
  150. 00000184  C47C 000F                and.w      D2, 0xF
  151. 00000188  4842                     swap.w     D2
  152. 0000018A  4242                     clr.w      D2
  153. 0000018C  4842                     swap.w     D2
  154. 0000018E  9682                     sub.l      D3, D2
  155. 00000190  B6BC 0000 0030           cmp.l      D3, 0x30 /* '0' */
  156. 00000196  661E                     bne        +0x20 /* 000001B6 */
  157. 00000198  264C                     movea.l    A3, A4
  158. 0000019A  508B                     addq.l     A3, 8
  159. 0000019C  0CAB 2E43 4F4E 0004      cmpi.l     [A3 + 0x4], 0x2E434F4E /* '.CON' */
  160. 000001A4  6610                     bne        +0x12 /* 000001B6 */
  161. 000001A6  2038 02A6                move.l     D0, [0x000002A6 /* SysZone */]
  162. 000001AA  588C                     addq.l     A4, 4
  163. 000001AC  D094                     add.l      D0, [A4]
  164. label000001AE:
  165. 000001AE  4CDF 1830                movem.l    D4,D5,A3,A4, [A7]+
  166. 000001B2  4E5E                     unlink     A6
  167. 000001B4  4E75                     rts
  168. label000001B6:
  169. 000001B6  D9C5                     add.l      A4, D5
  170. 000001B8  60A0                     bra        -0x5E /* 0000015A */
  171. label000001BA:
  172. 000001BA  7000                     moveq.l    D0, 0x00
  173. 000001BC  60F0                     bra        -0xE /* 000001AE */
  174. fn000001BE:
  175. 000001BE  4E56 0000                link       A6, 0
  176. 000001C2  48E7 0E18                movem.l    -[A7], D4,D5,D6,A3,A4
  177. 000001C6  246E 000C                movea.l    A2, [A6 + 0xC]
  178. 000001CA  382A 0006                move.w     D4, [A2 + 0x6]
  179. 000001CE  C87C 00FF                and.w      D4, 0xFF
  180. 000001D2  246E 0010                movea.l    A2, [A6 + 0x10]
  181. 000001D6  2C2A 0014                move.l     D6, [A2 + 0x14]
  182. 000001DA  4A86                     tst.l      D6
  183. 000001DC  6616                     bne        +0x18 /* 000001F4 */
  184. 000001DE  2F2E 0010                move.l     -[A7], [A6 + 0x10]
  185. 000001E2  2F2E 000C                move.l     -[A7], [A6 + 0xC]
  186. 000001E6  4EBA FE4C                jsr        [PC - 0x1B4 /* 00000034 */]
  187. 000001EA  504F                     addq.w     A7, 8
  188. 000001EC  246E 0010                movea.l    A2, [A6 + 0x10]
  189. 000001F0  2C2A 0014                move.l     D6, [A2 + 0x14]
  190. label000001F4:
  191. 000001F4  2F06                     move.l     -[A7], D6
  192. 000001F6  4EBA 0A5C                jsr        [PC + 0xA5C /* 00000C54 */]
  193. 000001FA  584F                     addq.w     A7, 4
  194. 000001FC  2446                     movea.l    A2, D6
  195. 000001FE  2612                     move.l     D3, [A2]
  196. 00000200  C6BC 00FF FFFF           and.l      D3, 0xFFFFFF
  197. 00000206  2843                     movea.l    A4, D3
  198. 00000208  246E 000C                movea.l    A2, [A6 + 0xC]
  199. 0000020C  266A 0020                movea.l    A3, [A2 + 0x20]
  200. 00000210  B87C 0002                cmp.w      D4, 0x2
  201. 00000214  6638                     bne        +0x3A /* 0000024E */
  202. 00000216  2F2E 0008                move.l     -[A7], [A6 + 0x8]
  203. 0000021A  2F0C                     move.l     -[A7], A4
  204. 0000021C  246E 000C                movea.l    A2, [A6 + 0xC]
  205. 00000220  3F2A 0026                move.w     -[A7], [A2 + 0x26]
  206. 00000224  2F0B                     move.l     -[A7], A3
  207. 00000226  4EBA 00E8                jsr        [PC + 0xE8 /* 00000310 */]
  208. 0000022A  DEFC 000E                add.w      A7, 0xE
  209. 0000022E  3800                     move.w     D4, D0
  210. 00000230  B07C 0000                cmp.w      D0, 0x0
  211. 00000234  6D0E                     blt        +0x10 /* 00000244 */
  212. 00000236  246E 000C                movea.l    A2, [A6 + 0xC]
  213. 0000023A  48C4                     ext.l      D4
  214. 0000023C  2544 0028                move.l     [A2 + 0x28], D4
  215. 00000240  7800                     moveq.l    D4, 0x00
  216. 00000242  6008                     bra        +0xA /* 0000024C */
  217. label00000244:
  218. 00000244  246E 000C                movea.l    A2, [A6 + 0xC]
  219. 00000248  42AA 0028                clr.l      [A2 + 0x28]
  220. label0000024C:
  221. 0000024C  6060                     bra        +0x62 /* 000002AE */
  222. label0000024E:
  223. 0000024E  B87C 0003                cmp.w      D4, 0x3
  224. 00000252  665A                     bne        +0x5C /* 000002AE */
  225. 00000254  246E 000C                movea.l    A2, [A6 + 0xC]
  226. 00000258  42AA 0028                clr.l      [A2 + 0x28]
  227. 0000025C  7A00                     moveq.l    D5, 0x00
  228. label0000025E:
  229. 0000025E  48C5                     ext.l      D5
  230. 00000260  246E 000C                movea.l    A2, [A6 + 0xC]
  231. 00000264  BAAA 0024                cmp.l      D5, [A2 + 0x24]
  232. 00000268  6C2E                     bge        +0x30 /* 00000298 */
  233. 0000026A  3F3C 0001                move.w     -[A7], 0x1
  234. 0000026E  2F2E 0008                move.l     -[A7], [A6 + 0x8]
  235. 00000272  2F0C                     move.l     -[A7], A4
  236. 00000274  244B                     movea.l    A2, A3
  237. 00000276  528B                     addq.l     A3, 1
  238. 00000278  1612                     move.b     D3, [A2]
  239. 0000027A  4883                     ext.w      D3
  240. 0000027C  3F03                     move.w     -[A7], D3
  241. 0000027E  4EBA 03D4                jsr        [PC + 0x3D4 /* 00000654 */]
  242. 00000282  DEFC 000C                add.w      A7, 0xC
  243. 00000286  3800                     move.w     D4, D0
  244. 00000288  4A40                     tst.w      D0
  245. 0000028A  6622                     bne        +0x24 /* 000002AE */
  246. 0000028C  246E 000C                movea.l    A2, [A6 + 0xC]
  247. 00000290  52AA 0028                addq.l     [A2 + 0x28], 1
  248. 00000294  5245                     addq.w     D5, 1
  249. 00000296  60C6                     bra        -0x38 /* 0000025E */
  250. label00000298:
  251. 00000298  4A45                     tst.w      D5
  252. 0000029A  6612                     bne        +0x14 /* 000002AE */
  253. 0000029C  2F2E 0008                move.l     -[A7], [A6 + 0x8]
  254. 000002A0  2F0C                     move.l     -[A7], A4
  255. 000002A2  4EBA 087E                jsr        [PC + 0x87E /* 00000B22 */]
  256. 000002A6  504F                     addq.w     A7, 8
  257. 000002A8  4A40                     tst.w      D0
  258. 000002AA  6702                     beq        +0x4 /* 000002AE */
  259. 000002AC  78FE                     moveq.l    D4, 0xFFFFFFFE
  260. label000002AE:
  261. 000002AE  2F06                     move.l     -[A7], D6
  262. 000002B0  4EBA 09B6                jsr        [PC + 0x9B6 /* 00000C68 */]
  263. 000002B4  584F                     addq.w     A7, 4
  264. 000002B6  3004                     move.w     D0, D4
  265. 000002B8  4CDF 1870                movem.l    D4,D5,D6,A3,A4, [A7]+
  266. 000002BC  4E5E                     unlink     A6
  267. 000002BE  4E75                     rts
  268. fn000002C0:
  269. 000002C0  4E56 0000                link       A6, 0
  270. 000002C4  48E7 0818                movem.l    -[A7], D4,A3,A4
  271. 000002C8  266E 0008                movea.l    A3, [A6 + 0x8]
  272. 000002CC  246E 000C                movea.l    A2, [A6 + 0xC]
  273. 000002D0  226A 0014                movea.l    A1, [A2 + 0x14]
  274. 000002D4  2851                     movea.l    A4, [A1]
  275. 000002D6  302B 001A                move.w     D0, [A3 + 0x1A]
  276. 000002DA  601C                     bra        +0x1E /* 000002F8 */
  277. label000002DC:
  278. 000002DC  244B                     movea.l    A2, A3
  279. 000002DE  D5FC 0000 001C           add.l      A2, 0x1C
  280. 000002E4  224C                     movea.l    A1, A4
  281. 000002E6  24D9                     move.l     [A2]+, [A1]+
  282. 000002E8  601C                     bra        +0x1E /* 00000306 */
  283. label000002EA:
  284. 000002EA  244C                     movea.l    A2, A4
  285. 000002EC  224B                     movea.l    A1, A3
  286. 000002EE  D3FC 0000 001C           add.l      A1, 0x1C
  287. 000002F4  24D9                     move.l     [A2]+, [A1]+
  288. 000002F6  600E                     bra        +0x10 /* 00000306 */
  289. label000002F8:
  290. 000002F8  907C 0000                sub.w      D0, 0x0
  291. 000002FC  67DE                     beq        -0x20 /* 000002DC */
  292. 000002FE  5340                     subq.w     D0, 1
  293. 00000300  67E8                     beq        -0x16 /* 000002EA */
  294. 00000302  5340                     subq.w     D0, 1
  295. 00000304  67E4                     beq        -0x1A /* 000002EA */
  296. label00000306:
  297. 00000306  7000                     moveq.l    D0, 0x00
  298. 00000308  4CDF 1810                movem.l    D4,A3,A4, [A7]+
  299. 0000030C  4E5E                     unlink     A6
  300. 0000030E  4E75                     rts
  301. fn00000310:
  302. 00000310  4E56 0000                link       A6, 0
  303. 00000314  48E7 0E18                movem.l    -[A7], D4,D5,D6,A3,A4
  304. 00000318  382E 000C                move.w     D4, [A6 + 0xC]
  305. 0000031C  266E 000E                movea.l    A3, [A6 + 0xE]
  306. 00000320  3C13                     move.w     D6, [A3]
  307. label00000322:
  308. 00000322  2F2E 0012                move.l     -[A7], [A6 + 0x12]
  309. 00000326  2F0B                     move.l     -[A7], A3
  310. 00000328  4EBA 07F8                jsr        [PC + 0x7F8 /* 00000B22 */]
  311. 0000032C  504F                     addq.w     A7, 8
  312. 0000032E  4A40                     tst.w      D0
  313. 00000330  670A                     beq        +0xC /* 0000033C */
  314. 00000332  70FE                     moveq.l    D0, 0xFFFFFFFE
  315. label00000334:
  316. 00000334  4CDF 1870                movem.l    D4,D5,D6,A3,A4, [A7]+
  317. 00000338  4E5E                     unlink     A6
  318. 0000033A  4E75                     rts
  319. label0000033C:
  320. 0000033C  2F2E 0012                move.l     -[A7], [A6 + 0x12]
  321. 00000340  2F0B                     move.l     -[A7], A3
  322. 00000342  616A                     bsr        +0x6C /* 000003AE */
  323. 00000344  504F                     addq.w     A7, 8
  324. 00000346  4A40                     tst.w      D0
  325. 00000348  661A                     bne        +0x1C /* 00000364 */
  326. 0000034A  2F0B                     move.l     -[A7], A3
  327. 0000034C  3F3C 0001                move.w     -[A7], 0x1
  328. 00000350  4EBA 02A4                jsr        [PC + 0x2A4 /* 000005F6 */]
  329. 00000354  5C4F                     addq.w     A7, 6
  330. 00000356  3606                     move.w     D3, D6
  331. 00000358  C67C 0200                and.w      D3, 0x200
  332. 0000035C  6704                     beq        +0x6 /* 00000362 */
  333. 0000035E  7000                     moveq.l    D0, 0x00
  334. 00000360  60D2                     bra        -0x2C /* 00000334 */
  335. label00000362:
  336. 00000362  60BE                     bra        -0x40 /* 00000322 */
  337. label00000364:
  338. 00000364  2F0B                     move.l     -[A7], A3
  339. 00000366  4267                     clr.w      -[A7]
  340. 00000368  4EBA 028C                jsr        [PC + 0x28C /* 000005F6 */]
  341. 0000036C  5C4F                     addq.w     A7, 6
  342. 0000036E  262B 0028                move.l     D3, [A3 + 0x28]
  343. 00000372  96AB 002C                sub.l      D3, [A3 + 0x2C]
  344. 00000376  3A03                     move.w     D5, D3
  345. 00000378  BA44                     cmp.w      D5, D4
  346. 0000037A  6C02                     bge        +0x4 /* 0000037E */
  347. 0000037C  3805                     move.w     D4, D5
  348. label0000037E:
  349. 0000037E  4A44                     tst.w      D4
  350. 00000380  6728                     beq        +0x2A /* 000003AA */
  351. 00000382  3F04                     move.w     -[A7], D4
  352. 00000384  2F2E 0008                move.l     -[A7], [A6 + 0x8]
  353. 00000388  2F2B 002C                move.l     -[A7], [A3 + 0x2C]
  354. 0000038C  4EBA 0900                jsr        [PC + 0x900 /* 00000C8E */]
  355. 00000390  DEFC 000A                add.w      A7, 0xA /* '\n' */
  356. 00000394  3F04                     move.w     -[A7], D4
  357. 00000396  2F2B 002C                move.l     -[A7], [A3 + 0x2C]
  358. 0000039A  2F0B                     move.l     -[A7], A3
  359. 0000039C  4EBA 0218                jsr        [PC + 0x218 /* 000005B6 */]
  360. 000003A0  DEFC 000A                add.w      A7, 0xA /* '\n' */
  361. 000003A4  48C4                     ext.l      D4
  362. 000003A6  99AB 0028                sub.l      [A3 + 0x28], D4
  363. label000003AA:
  364. 000003AA  3004                     move.w     D0, D4
  365. 000003AC  6086                     bra        -0x78 /* 00000334 */
  366. fn000003AE:
  367. 000003AE  4E56 FFF8                link       A6, -0x0008
  368. 000003B2  48E7 0E18                movem.l    -[A7], D4,D5,D6,A3,A4
  369. 000003B6  266E 0008                movea.l    A3, [A6 + 0x8]
  370. 000003BA  246B 0028                movea.l    A2, [A3 + 0x28]
  371. 000003BE  B5EB 002C                cmpa.l     A2, [A3 + 0x2C]
  372. 000003C2  630A                     bls        +0xC /* 000003CE */
  373. 000003C4  7001                     moveq.l    D0, 0x01
  374. label000003C6:
  375. 000003C6  4CDF 1870                movem.l    D4,D5,D6,A3,A4, [A7]+
  376. 000003CA  4E5E                     unlink     A6
  377. 000003CC  4E75                     rts
  378. label000003CE:
  379. 000003CE  3813                     move.w     D4, [A3]
  380. 000003D0  286B 0020                movea.l    A4, [A3 + 0x20]
  381. label000003D4:
  382. 000003D4  B9EB 0024                cmpa.l     A4, [A3 + 0x24]
  383. 000003D8  6400 01D2                bcc        +0x1D4 /* 000005AC */
  384. 000003DC  244C                     movea.l    A2, A4
  385. 000003DE  528C                     addq.l     A4, 1
  386. 000003E0  1612                     move.b     D3, [A2]
  387. 000003E2  4883                     ext.w      D3
  388. 000003E4  3A03                     move.w     D5, D3
  389. 000003E6  3604                     move.w     D3, D4
  390. 000003E8  C67C 0400                and.w      D3, 0x400
  391. 000003EC  6616                     bne        +0x18 /* 00000404 */
  392. 000003EE  3604                     move.w     D3, D4
  393. 000003F0  C67C 0020                and.w      D3, 0x20 /* ' ' */
  394. 000003F4  670E                     beq        +0x10 /* 00000404 */
  395. 000003F6  BA7C 000D                cmp.w      D5, 0xD /* '\r' */
  396. 000003FA  6608                     bne        +0xA /* 00000404 */
  397. 000003FC  7A0A                     moveq.l    D5, 0x0A
  398. 000003FE  197C 000A FFFF           move.b     [A4 - 0x1], 0xA /* '\n' */
  399. label00000404:
  400. 00000404  3604                     move.w     D3, D4
  401. 00000406  C67C 0500                and.w      D3, 0x500
  402. 0000040A  6600 015C                bne        +0x15E /* 00000568 */
  403. 0000040E  162B 0002                move.b     D3, [A3 + 0x2]
  404. 00000412  4883                     ext.w      D3
  405. 00000414  BA43                     cmp.w      D5, D3
  406. 00000416  6600 00C6                bne        +0xC8 /* 000004DE */
  407. 0000041A  3F3C 0001                move.w     -[A7], 0x1
  408. 0000041E  538C                     subq.l     A4, 1
  409. 00000420  2F0C                     move.l     -[A7], A4
  410. 00000422  2F0B                     move.l     -[A7], A3
  411. 00000424  4EBA 0190                jsr        [PC + 0x190 /* 000005B6 */]
  412. 00000428  DEFC 000A                add.w      A7, 0xA /* '\n' */
  413. 0000042C  B9EB 002C                cmpa.l     A4, [A3 + 0x2C]
  414. 00000430  6300 009E                bls        +0xA0 /* 000004D0 */
  415. 00000434  538C                     subq.l     A4, 1
  416. 00000436  1614                     move.b     D3, [A4]
  417. 00000438  4883                     ext.w      D3
  418. 0000043A  3C03                     move.w     D6, D3
  419. 0000043C  3F3C 0001                move.w     -[A7], 0x1
  420. 00000440  2F0C                     move.l     -[A7], A4
  421. 00000442  2F0B                     move.l     -[A7], A3
  422. 00000444  4EBA 0170                jsr        [PC + 0x170 /* 000005B6 */]
  423. 00000448  DEFC 000A                add.w      A7, 0xA /* '\n' */
  424. 0000044C  162B 0002                move.b     D3, [A3 + 0x2]
  425. 00000450  4883                     ext.w      D3
  426. 00000452  B67C 0008                cmp.w      D3, 0x8
  427. 00000456  6676                     bne        +0x78 /* 000004CE */
  428. 00000458  162B 000C                move.b     D3, [A3 + 0xC]
  429. 0000045C  4883                     ext.w      D3
  430. 0000045E  3A03                     move.w     D5, D3
  431. 00000460  2F0B                     move.l     -[A7], A3
  432. 00000462  4267                     clr.w      -[A7]
  433. 00000464  4EBA 0190                jsr        [PC + 0x190 /* 000005F6 */]
  434. 00000468  5C4F                     addq.w     A7, 6
  435. 0000046A  4267                     clr.w      -[A7]
  436. 0000046C  3F06                     move.w     -[A7], D6
  437. 0000046E  A88D                     syscall    CharWidth
  438. 00000470  301F                     move.w     D0, [A7]+
  439. 00000472  916B 000A                sub.w      [A3 + 0xA], D0
  440. 00000476  0C6B 0000 000A           cmpi.w     [A3 + 0xA], 0x0
  441. 0000047C  6E06                     bgt        +0x8 /* 00000484 */
  442. 0000047E  377C 0001 000A           move.w     [A3 + 0xA], 0x1
  443. label00000484:
  444. 00000484  3604                     move.w     D3, D4
  445. 00000486  C67C 0080                and.w      D3, 0x80
  446. 0000048A  6734                     beq        +0x36 /* 000004C0 */
  447. 0000048C  3D6B 000A FFFA           move.w     [A6 - 0x6], [A3 + 0xA]
  448. 00000492  362B 0008                move.w     D3, [A3 + 0x8]
  449. 00000496  D66B 001A                add.w      D3, [A3 + 0x1A]
  450. 0000049A  3D43 FFFC                move.w     [A6 - 0x4], D3
  451. 0000049E  362B 0008                move.w     D3, [A3 + 0x8]
  452. 000004A2  966B 0018                sub.w      D3, [A3 + 0x18]
  453. 000004A6  3D43 FFF8                move.w     [A6 - 0x8], D3
  454. 000004AA  4267                     clr.w      -[A7]
  455. 000004AC  3F06                     move.w     -[A7], D6
  456. 000004AE  A88D                     syscall    CharWidth
  457. 000004B0  301F                     move.w     D0, [A7]+
  458. 000004B2  D06E FFFA                add.w      D0, [A6 - 0x6]
  459. 000004B6  3D40 FFFE                move.w     [A6 - 0x2], D0
  460. 000004BA  486E FFF8                pea.l      [A6 - 0x8]
  461. 000004BE  A8A3                     syscall    EraseRect
  462. label000004C0:
  463. 000004C0  2F0B                     move.l     -[A7], A3
  464. 000004C2  3F05                     move.w     -[A7], D5
  465. 000004C4  4EBA 0130                jsr        [PC + 0x130 /* 000005F6 */]
  466. 000004C8  5C4F                     addq.w     A7, 6
  467. 000004CA  6000 FF08                bra        -0xF6 /* 000003D4 */
  468. label000004CE:
  469. 000004CE  600E                     bra        +0x10 /* 000004DE */
  470. label000004D0:
  471. 000004D0  162B 0002                move.b     D3, [A3 + 0x2]
  472. 000004D4  4883                     ext.w      D3
  473. 000004D6  B67C 0008                cmp.w      D3, 0x8
  474. 000004DA  6700 FEF8                beq        -0x106 /* 000003D4 */
  475. label000004DE:
  476. 000004DE  BA7C 0004                cmp.w      D5, 0x4
  477. 000004E2  662C                     bne        +0x2E /* 00000510 */
  478. 000004E4  3F3C 0001                move.w     -[A7], 0x1
  479. 000004E8  538C                     subq.l     A4, 1
  480. 000004EA  2F0C                     move.l     -[A7], A4
  481. 000004EC  2F0B                     move.l     -[A7], A3
  482. 000004EE  4EBA 00C6                jsr        [PC + 0xC6 /* 000005B6 */]
  483. 000004F2  DEFC 000A                add.w      A7, 0xA /* '\n' */
  484. 000004F6  B9EB 002C                cmpa.l     A4, [A3 + 0x2C]
  485. 000004FA  6200 FED8                bhi        -0x126 /* 000003D4 */
  486. 000004FE  276B 002C 0020           move.l     [A3 + 0x20], [A3 + 0x2C]
  487. 00000504  276B 002C 0028           move.l     [A3 + 0x28], [A3 + 0x2C]
  488. 0000050A  7001                     moveq.l    D0, 0x01
  489. 0000050C  6000 FEB8                bra        -0x146 /* 000003C6 */
  490. label00000510:
  491. 00000510  162B 0003                move.b     D3, [A3 + 0x3]
  492. 00000514  4883                     ext.w      D3
  493. 00000516  BA43                     cmp.w      D5, D3
  494. 00000518  664E                     bne        +0x50 /* 00000568 */
  495. 0000051A  3604                     move.w     D3, D4
  496. 0000051C  C67C 0040                and.w      D3, 0x40 /* '@' */
  497. 00000520  6726                     beq        +0x28 /* 00000548 */
  498. 00000522  4267                     clr.w      -[A7]
  499. 00000524  2F2E 000C                move.l     -[A7], [A6 + 0xC]
  500. 00000528  2F0B                     move.l     -[A7], A3
  501. 0000052A  3F05                     move.w     -[A7], D5
  502. 0000052C  4EBA 0126                jsr        [PC + 0x126 /* 00000654 */]
  503. 00000530  DEFC 000C                add.w      A7, 0xC
  504. 00000534  4267                     clr.w      -[A7]
  505. 00000536  2F2E 000C                move.l     -[A7], [A6 + 0xC]
  506. 0000053A  2F0B                     move.l     -[A7], A3
  507. 0000053C  3F3C 000A                move.w     -[A7], 0xA /* '\n' */
  508. 00000540  4EBA 0112                jsr        [PC + 0x112 /* 00000654 */]
  509. 00000544  DEFC 000C                add.w      A7, 0xC
  510. label00000548:
  511. 00000548  260C                     move.l     D3, A4
  512. 0000054A  96AB 002C                sub.l      D3, [A3 + 0x2C]
  513. 0000054E  3F03                     move.w     -[A7], D3
  514. 00000550  2F2B 002C                move.l     -[A7], [A3 + 0x2C]
  515. 00000554  2F0B                     move.l     -[A7], A3
  516. 00000556  615E                     bsr        +0x60 /* 000005B6 */
  517. 00000558  DEFC 000A                add.w      A7, 0xA /* '\n' */
  518. 0000055C  276B 002C 0020           move.l     [A3 + 0x20], [A3 + 0x2C]
  519. 00000562  7000                     moveq.l    D0, 0x00
  520. 00000564  6000 FE60                bra        -0x19E /* 000003C6 */
  521. label00000568:
  522. 00000568  3604                     move.w     D3, D4
  523. 0000056A  C67C 0400                and.w      D3, 0x400
  524. 0000056E  661A                     bne        +0x1C /* 0000058A */
  525. 00000570  3604                     move.w     D3, D4
  526. 00000572  C67C 0040                and.w      D3, 0x40 /* '@' */
  527. 00000576  6712                     beq        +0x14 /* 0000058A */
  528. 00000578  4267                     clr.w      -[A7]
  529. 0000057A  2F2E 000C                move.l     -[A7], [A6 + 0xC]
  530. 0000057E  2F0B                     move.l     -[A7], A3
  531. 00000580  3F05                     move.w     -[A7], D5
  532. 00000582  4EBA 00D0                jsr        [PC + 0xD0 /* 00000654 */]
  533. 00000586  DEFC 000C                add.w      A7, 0xC
  534. label0000058A:
  535. 0000058A  3604                     move.w     D3, D4
  536. 0000058C  C67C 0500                and.w      D3, 0x500
  537. 00000590  6606                     bne        +0x8 /* 00000598 */
  538. 00000592  BA7C 000A                cmp.w      D5, 0xA /* '\n' */
  539. 00000596  6610                     bne        +0x12 /* 000005A8 */
  540. label00000598:
  541. 00000598  276B 002C 0020           move.l     [A3 + 0x20], [A3 + 0x2C]
  542. 0000059E  274C 0028                move.l     [A3 + 0x28], A4
  543. 000005A2  7001                     moveq.l    D0, 0x01
  544. 000005A4  6000 FE20                bra        -0x1DE /* 000003C6 */
  545. label000005A8:
  546. 000005A8  6000 FE2A                bra        -0x1D4 /* 000003D4 */
  547. label000005AC:
  548. 000005AC  274C 0020                move.l     [A3 + 0x20], A4
  549. 000005B0  7000                     moveq.l    D0, 0x00
  550. 000005B2  6000 FE12                bra        -0x1EC /* 000003C6 */
  551. fn000005B6:
  552. 000005B6  4E56 0000                link       A6, 0
  553. 000005BA  246E 0008                movea.l    A2, [A6 + 0x8]
  554. 000005BE  262A 0024                move.l     D3, [A2 + 0x24]
  555. 000005C2  96AE 000C                sub.l      D3, [A6 + 0xC]
  556. 000005C6  966E 0010                sub.w      D3, [A6 + 0x10]
  557. 000005CA  3F03                     move.w     -[A7], D3
  558. 000005CC  2F2E 000C                move.l     -[A7], [A6 + 0xC]
  559. 000005D0  362E 0010                move.w     D3, [A6 + 0x10]
  560. 000005D4  48C3                     ext.l      D3
  561. 000005D6  D6AE 000C                add.l      D3, [A6 + 0xC]
  562. 000005DA  2F03                     move.l     -[A7], D3
  563. 000005DC  4EBA 06B0                jsr        [PC + 0x6B0 /* 00000C8E */]
  564. 000005E0  DEFC 000A                add.w      A7, 0xA /* '\n' */
  565. 000005E4  246E 0008                movea.l    A2, [A6 + 0x8]
  566. 000005E8  362E 0010                move.w     D3, [A6 + 0x10]
  567. 000005EC  48C3                     ext.l      D3
  568. 000005EE  97AA 0024                sub.l      [A2 + 0x24], D3
  569. 000005F2  4E5E                     unlink     A6
  570. 000005F4  4E75                     rts
  571. fn000005F6:
  572. 000005F6  4E56 FFF8                link       A6, -0x0008
  573. 000005FA  2F0B                     move.l     -[A7], A3
  574. 000005FC  266E 000A                movea.l    A3, [A6 + 0xA]
  575. 00000600  162B 000C                move.b     D3, [A3 + 0xC]
  576. 00000604  4883                     ext.w      D3
  577. 00000606  B66E 0008                cmp.w      D3, [A6 + 0x8]
  578. 0000060A  6606                     bne        +0x8 /* 00000612 */
  579. label0000060C:
  580. 0000060C  265F                     movea.l    A3, [A7]+
  581. 0000060E  4E5E                     unlink     A6
  582. 00000610  4E75                     rts
  583. label00000612:
  584. 00000612  362B 000A                move.w     D3, [A3 + 0xA]
  585. 00000616  5343                     subq.w     D3, 1
  586. 00000618  3D43 FFFA                move.w     [A6 - 0x6], D3
  587. 0000061C  362B 0008                move.w     D3, [A3 + 0x8]
  588. 00000620  D66B 001A                add.w      D3, [A3 + 0x1A]
  589. 00000624  5243                     addq.w     D3, 1
  590. 00000626  3D43 FFFC                move.w     [A6 - 0x4], D3
  591. 0000062A  362B 0008                move.w     D3, [A3 + 0x8]
  592. 0000062E  966B 0018                sub.w      D3, [A3 + 0x18]
  593. 00000632  5343                     subq.w     D3, 1
  594. 00000634  3D43 FFF8                move.w     [A6 - 0x8], D3
  595. 00000638  362B 0016                move.w     D3, [A3 + 0x16]
  596. 0000063C  D66E FFFA                add.w      D3, [A6 - 0x6]
  597. 00000640  5243                     addq.w     D3, 1
  598. 00000642  3D43 FFFE                move.w     [A6 - 0x2], D3
  599. 00000646  486E FFF8                pea.l      [A6 - 0x8]
  600. 0000064A  A8A4                     syscall    InvertRect
  601. 0000064C  176E 0009 000C           move.b     [A3 + 0xC], [A6 + 0x9]
  602. 00000652  60B8                     bra        -0x46 /* 0000060C */
  603. fn00000654:
  604. 00000654  4E56 FFF4                link       A6, -0x000C
  605. 00000658  48E7 0F18                movem.l    -[A7], D4,D5,D6,D7,A3,A4
  606. 0000065C  382E 0008                move.w     D4, [A6 + 0x8]
  607. 00000660  266E 000A                movea.l    A3, [A6 + 0xA]
  608. 00000664  286E 000E                movea.l    A4, [A6 + 0xE]
  609. 00000668  162B 000C                move.b     D3, [A3 + 0xC]
  610. 0000066C  4883                     ext.w      D3
  611. 0000066E  3D43 FFFE                move.w     [A6 - 0x2], D3
  612. 00000672  3C13                     move.w     D6, [A3]
  613. 00000674  3606                     move.w     D3, D6
  614. 00000676  C67C 0400                and.w      D3, 0x400
  615. 0000067A  6704                     beq        +0x6 /* 00000680 */
  616. 0000067C  CC7C 1000                and.w      D6, 0x1000
  617. label00000680:
  618. 00000680  2F0B                     move.l     -[A7], A3
  619. 00000682  4267                     clr.w      -[A7]
  620. 00000684  4EBA FF70                jsr        [PC - 0x90 /* 000005F6 */]
  621. 00000688  5C4F                     addq.w     A7, 6
  622. 0000068A  45EE FFF4                lea.l      A2, [A6 - 0xC]
  623. 0000068E  224C                     movea.l    A1, A4
  624. 00000690  D3FC 0000 0010           add.l      A1, 0x10
  625. 00000696  24D9                     move.l     [A2]+, [A1]+
  626. 00000698  24D9                     move.l     [A2]+, [A1]+
  627. 0000069A  362C 0044                move.w     D3, [A4 + 0x44]
  628. 0000069E  B66B 000E                cmp.w      D3, [A3 + 0xE]
  629. 000006A2  660A                     bne        +0xC /* 000006AE */
  630. 000006A4  362C 004A                move.w     D3, [A4 + 0x4A]
  631. 000006A8  B66B 0010                cmp.w      D3, [A3 + 0x10]
  632. 000006AC  6778                     beq        +0x7A /* 00000726 */
  633. label000006AE:
  634. 000006AE  3A2B 0008                move.w     D5, [A3 + 0x8]
  635. 000006B2  9A6B 0018                sub.w      D5, [A3 + 0x18]
  636. 000006B6  BA7C 0000                cmp.w      D5, 0x0
  637. 000006BA  6C02                     bge        +0x4 /* 000006BE */
  638. 000006BC  7A00                     moveq.l    D5, 0x00
  639. label000006BE:
  640. 000006BE  244B                     movea.l    A2, A3
  641. 000006C0  D5FC 0000 0018           add.l      A2, 0x18
  642. 000006C6  2F0A                     move.l     -[A7], A2
  643. 000006C8  A88B                     syscall    GetFontInfo
  644. 000006CA  362B 0018                move.w     D3, [A3 + 0x18]
  645. 000006CE  D645                     add.w      D3, D5
  646. 000006D0  3743 0008                move.w     [A3 + 0x8], D3
  647. 000006D4  362B 0018                move.w     D3, [A3 + 0x18]
  648. 000006D8  D66B 001A                add.w      D3, [A3 + 0x1A]
  649. 000006DC  D66B 001E                add.w      D3, [A3 + 0x1E]
  650. 000006E0  3743 0014                move.w     [A3 + 0x14], D3
  651. 000006E4  376C 0044 000E           move.w     [A3 + 0xE], [A4 + 0x44]
  652. 000006EA  376C 004A 0010           move.w     [A3 + 0x10], [A4 + 0x4A]
  653. 000006F0  4267                     clr.w      -[A7]
  654. 000006F2  3F3C 006E                move.w     -[A7], 0x6E /* 'n' */
  655. 000006F6  A88D                     syscall    CharWidth
  656. 000006F8  301F                     move.w     D0, [A7]+
  657. 000006FA  3740 0016                move.w     [A3 + 0x16], D0
  658. 000006FE  3A2B 0008                move.w     D5, [A3 + 0x8]
  659. 00000702  DA6B 001A                add.w      D5, [A3 + 0x1A]
  660. 00000706  BA6E FFF8                cmp.w      D5, [A6 - 0x8]
  661. 0000070A  6D1A                     blt        +0x1C /* 00000726 */
  662. 0000070C  9A6E FFF8                sub.w      D5, [A6 - 0x8]
  663. 00000710  3605                     move.w     D3, D5
  664. 00000712  4443                     neg.w      D3
  665. 00000714  3F03                     move.w     -[A7], D3
  666. 00000716  4267                     clr.w      -[A7]
  667. 00000718  486E FFF4                pea.l      [A6 - 0xC]
  668. 0000071C  4EBA 03DA                jsr        [PC + 0x3DA /* 00000AF8 */]
  669. 00000720  504F                     addq.w     A7, 8
  670. 00000722  9B6B 0008                sub.w      [A3 + 0x8], D5
  671. label00000726:
  672. 00000726  0C6E 0001 0012           cmpi.w     [A6 + 0x12], 0x1
  673. 0000072C  6620                     bne        +0x22 /* 0000074E */
  674. 0000072E  3606                     move.w     D3, D6
  675. 00000730  C67C 0800                and.w      D3, 0x800
  676. 00000734  6718                     beq        +0x1A /* 0000074E */
  677. 00000736  2F0C                     move.l     -[A7], A4
  678. 00000738  2F0B                     move.l     -[A7], A3
  679. 0000073A  4EBA 03E6                jsr        [PC + 0x3E6 /* 00000B22 */]
  680. 0000073E  504F                     addq.w     A7, 8
  681. 00000740  4A40                     tst.w      D0
  682. 00000742  670A                     beq        +0xC /* 0000074E */
  683. 00000744  70FE                     moveq.l    D0, 0xFFFFFFFE
  684. label00000746:
  685. 00000746  4CDF 18F0                movem.l    D4,D5,D6,D7,A3,A4, [A7]+
  686. 0000074A  4E5E                     unlink     A6
  687. 0000074C  4E75                     rts
  688. label0000074E:
  689. 0000074E  0C6E 0002 0012           cmpi.w     [A6 + 0x12], 0x2
  690. 00000754  6716                     beq        +0x18 /* 0000076C */
  691. 00000756  2E2C 0030                move.l     D7, [A4 + 0x30]
  692. 0000075A  296B 0008 0030           move.l     [A4 + 0x30], [A3 + 0x8]
  693. 00000760  3D6C 0048 FFFC           move.w     [A6 - 0x4], [A4 + 0x48]
  694. 00000766  397C 0001 0048           move.w     [A4 + 0x48], 0x1
  695. label0000076C:
  696. 0000076C  102B 000D                move.b     D0, [A3 + 0xD]
  697. 00000770  4880                     ext.w      D0
  698. 00000772  6000 02C0                bra        +0x2C2 /* 00000A34 */
  699. 00000776  3004                     move.w     D0, D4
  700. 00000778  6000 0174                bra        +0x176 /* 000008EE */
  701. 0000077C  3F3C 0003                move.w     -[A7], 0x3
  702. 00000780  A9C8                     syscall    SysBeep
  703. 00000782  6000 017E                bra        +0x180 /* 00000902 */
  704. 00000786  362B 0014                move.w     D3, [A3 + 0x14]
  705. 0000078A  976C 0030                sub.w      [A4 + 0x30], D3
  706. 0000078E  6000 0172                bra        +0x174 /* 00000902 */
  707. 00000792  397C 0001 0030           move.w     [A4 + 0x30], 0x1
  708. 00000798  397C 0001 0032           move.w     [A4 + 0x32], 0x1
  709. 0000079E  6000 0162                bra        +0x164 /* 00000902 */
  710. 000007A2  362B 0016                move.w     D3, [A3 + 0x16]
  711. 000007A6  D76C 0032                add.w      [A4 + 0x32], D3
  712. 000007AA  6000 0156                bra        +0x158 /* 00000902 */
  713. 000007AE  177C 0001 000D           move.b     [A3 + 0xD], 0x1
  714. 000007B4  6000 014C                bra        +0x14E /* 00000902 */
  715. 000007B8  362B 0016                move.w     D3, [A3 + 0x16]
  716. 000007BC  976C 0032                sub.w      [A4 + 0x32], D3
  717. 000007C0  6000 0140                bra        +0x142 /* 00000902 */
  718. 000007C4  3606                     move.w     D3, D6
  719. 000007C6  C67C 0010                and.w      D3, 0x10
  720. 000007CA  675C                     beq        +0x5E /* 00000828 */
  721. 000007CC  3606                     move.w     D3, D6
  722. 000007CE  C67C 000F                and.w      D3, 0xF
  723. 000007D2  3A03                     move.w     D5, D3
  724. 000007D4  CAEB 0016                mulu.w     D5, [A3 + 0x16]
  725. 000007D8  362C 0032                move.w     D3, [A4 + 0x32]
  726. 000007DC  5343                     subq.w     D3, 1
  727. 000007DE  48C3                     ext.l      D3
  728. 000007E0  87C5                     divs.w     D3, D5
  729. 000007E2  4843                     swap.w     D3
  730. 000007E4  3805                     move.w     D4, D5
  731. 000007E6  9843                     sub.w      D4, D3
  732. 000007E8  4267                     clr.w      -[A7]
  733. 000007EA  3F3C 0020                move.w     -[A7], 0x20 /* ' ' */
  734. 000007EE  A88D                     syscall    CharWidth
  735. 000007F0  301F                     move.w     D0, [A7]+
  736. 000007F2  48C4                     ext.l      D4
  737. 000007F4  89C0                     divs.w     D4, D0
  738. 000007F6  4A44                     tst.w      D4
  739. 000007F8  6610                     bne        +0x12 /* 0000080A */
  740. 000007FA  4267                     clr.w      -[A7]
  741. 000007FC  3F3C 0020                move.w     -[A7], 0x20 /* ' ' */
  742. 00000800  A88D                     syscall    CharWidth
  743. 00000802  301F                     move.w     D0, [A7]+
  744. 00000804  3805                     move.w     D4, D5
  745. 00000806  48C4                     ext.l      D4
  746. 00000808  89C0                     divs.w     D4, D0
  747. label0000080A:
  748. 0000080A  3604                     move.w     D3, D4
  749. 0000080C  5344                     subq.w     D4, 1
  750. 0000080E  4A43                     tst.w      D3
  751. 00000810  6716                     beq        +0x18 /* 00000828 */
  752. 00000812  3F3C 0002                move.w     -[A7], 0x2
  753. 00000816  2F0C                     move.l     -[A7], A4
  754. 00000818  2F0B                     move.l     -[A7], A3
  755. 0000081A  3F3C 0020                move.w     -[A7], 0x20 /* ' ' */
  756. 0000081E  4EBA FE34                jsr        [PC - 0x1CC /* 00000654 */]
  757. 00000822  DEFC 000C                add.w      A7, 0xC
  758. 00000826  60E2                     bra        -0x1C /* 0000080A */
  759. label00000828:
  760. 00000828  6000 00D8                bra        +0xDA /* 00000902 */
  761. 0000082C  486E FFF4                pea.l      [A6 - 0xC]
  762. 00000830  A8A3                     syscall    EraseRect
  763. 00000832  397C 0001 0032           move.w     [A4 + 0x32], 0x1
  764. 00000838  426C 0030                clr.w      [A4 + 0x30]
  765. 0000083C  6000 00C4                bra        +0xC6 /* 00000902 */
  766. label00000840:
  767. 00000840  B87C 0020                cmp.w      D4, 0x20 /* ' ' */
  768. 00000844  6D00 00BC                blt        +0xBE /* 00000902 */
  769. 00000848  B87C 007F                cmp.w      D4, 0x7F
  770. 0000084C  6C00 00B4                bge        +0xB6 /* 00000902 */
  771. 00000850  3606                     move.w     D3, D6
  772. 00000852  C67C 1000                and.w      D3, 0x1000
  773. 00000856  6738                     beq        +0x3A /* 00000890 */
  774. 00000858  3D6C 0032 FFF6           move.w     [A6 - 0xA], [A4 + 0x32]
  775. 0000085E  362C 0030                move.w     D3, [A4 + 0x30]
  776. 00000862  D66B 001A                add.w      D3, [A3 + 0x1A]
  777. 00000866  D66B 001E                add.w      D3, [A3 + 0x1E]
  778. 0000086A  3D43 FFF8                move.w     [A6 - 0x8], D3
  779. 0000086E  362C 0030                move.w     D3, [A4 + 0x30]
  780. 00000872  966B 0018                sub.w      D3, [A3 + 0x18]
  781. 00000876  3D43 FFF4                move.w     [A6 - 0xC], D3
  782. 0000087A  4267                     clr.w      -[A7]
  783. 0000087C  3F04                     move.w     -[A7], D4
  784. 0000087E  A88D                     syscall    CharWidth
  785. 00000880  301F                     move.w     D0, [A7]+
  786. 00000882  D06E FFF6                add.w      D0, [A6 - 0xA]
  787. 00000886  3D40 FFFA                move.w     [A6 - 0x6], D0
  788. 0000088A  486E FFF4                pea.l      [A6 - 0xC]
  789. 0000088E  A8A3                     syscall    EraseRect
  790. label00000890:
  791. 00000890  3F04                     move.w     -[A7], D4
  792. 00000892  A883                     syscall    DrawChar
  793. 00000894  606C                     bra        +0x6E /* 00000902 */
  794. 00000896  3606                     move.w     D3, D6
  795. 00000898  C67C 0020                and.w      D3, 0x20 /* ' ' */
  796. 0000089C  6608                     bne        +0xA /* 000008A6 */
  797. 0000089E  397C 0001 0032           move.w     [A4 + 0x32], 0x1
  798. 000008A4  605C                     bra        +0x5E /* 00000902 */
  799. label000008A6:
  800. 000008A6  3606                     move.w     D3, D6
  801. 000008A8  C67C 0020                and.w      D3, 0x20 /* ' ' */
  802. 000008AC  6706                     beq        +0x8 /* 000008B4 */
  803. 000008AE  397C 0001 0032           move.w     [A4 + 0x32], 0x1
  804. label000008B4:
  805. 000008B4  362B 0014                move.w     D3, [A3 + 0x14]
  806. 000008B8  D76C 0030                add.w      [A4 + 0x30], D3
  807. 000008BC  6044                     bra        +0x46 /* 00000902 */
  808. 000008BE  FE7C FEB8                .extension 0xE7C <<F/1/7>>, 0xFEB8 // unimplemented
  809. 000008C2  FEC4 FFA6                .extension 0xEC4 <<F/2-3/7>> // unimplemented
  810. 000008C6  FE86 FEA2                .extension 0xE86 <<F/2-3/7>> // unimplemented
  811. 000008CA  FF96                     .invalid   <<F/6/7>>
  812. 000008CC  FF40                     .extension 0xF40 <<F/4-5/7>> // unimplemented
  813. 000008CE  FF40                     .extension 0xF40 <<F/4-5/7>> // unimplemented
  814. 000008D0  FF40                     .extension 0xF40 <<F/4-5/7>> // unimplemented
  815. 000008D2  FF40                     .extension 0xF40 <<F/4-5/7>> // unimplemented
  816. 000008D4  FF40                     .extension 0xF40 <<F/4-5/7>> // unimplemented
  817. 000008D6  FF40                     .extension 0xF40 <<F/4-5/7>> // unimplemented
  818. 000008D8  FF40                     .extension 0xF40 <<F/4-5/7>> // unimplemented
  819. 000008DA  FF40                     .extension 0xF40 <<F/4-5/7>> // unimplemented
  820. 000008DC  FF40                     .extension 0xF40 <<F/4-5/7>> // unimplemented
  821. 000008DE  FF40                     .extension 0xF40 <<F/4-5/7>> // unimplemented
  822. 000008E0  FF40                     .extension 0xF40 <<F/4-5/7>> // unimplemented
  823. 000008E2  FF40                     .extension 0xF40 <<F/4-5/7>> // unimplemented
  824. 000008E4  FF2C                     .extension 0xF2C <<F/4-5/7>> // unimplemented
  825. 000008E6  FEAE FF40                .extension 0xEAE <<F/2-3/7>> // unimplemented
  826. 000008EA  FF40                     .extension 0xF40 <<F/4-5/7>> // unimplemented
  827. 000008EC  FE92 5F40                .extension 0xE92 <<F/2-3/7>> // unimplemented
  828. // begin alternate branch 000008EE-000008F0
  829. label000008EE:
  830. 000008EE  5F40                     subq.w     D0, 7
  831. // end alternate branch 000008EE-000008F0
  832. label000008EE: // (misaligned)
  833. 000008F0  B07C 0018                cmp.w      D0, 0x18
  834. 000008F4  6400 FF4A                bcc        -0xB4 /* 00000840 */
  835. 000008F8  E340                     asl        D0.w, 1
  836. 000008FA  303B 00C2                move.w     D0, [PC + D0.w - 0x62]
  837. 000008FE  4EFB 0000                jmp        [PC + D0.w]
  838. label00000902:
  839. 00000902  6000 0140                bra        +0x142 /* 00000A44 */
  840. 00000906  3004                     move.w     D0, D4
  841. 00000908  6000 00BC                bra        +0xBE /* 000009C6 */
  842. label0000090C:
  843. 0000090C  177C 0003 000D           move.b     [A3 + 0xD], 0x3
  844. 00000912  6000 00DA                bra        +0xDC /* 000009EE */
  845. label00000916:
  846. 00000916  3A2B 0014                move.w     D5, [A3 + 0x14]
  847. 0000091A  4445                     neg.w      D5
  848. 0000091C  6004                     bra        +0x6 /* 00000922 */
  849. label0000091E:
  850. 0000091E  3A2B 0014                move.w     D5, [A3 + 0x14]
  851. label00000922:
  852. 00000922  397C 0001 0032           move.w     [A4 + 0x32], 0x1
  853. 00000928  362C 0030                move.w     D3, [A4 + 0x30]
  854. 0000092C  966B 0018                sub.w      D3, [A3 + 0x18]
  855. 00000930  3D43 FFF4                move.w     [A6 - 0xC], D3
  856. 00000934  362E FFF8                move.w     D3, [A6 - 0x8]
  857. 00000938  48C3                     ext.l      D3
  858. 0000093A  87EB 0014                divs.w     D3, [A3 + 0x14]
  859. 0000093E  4843                     swap.w     D3
  860. 00000940  976E FFF8                sub.w      [A6 - 0x8], D3
  861. 00000944  3F05                     move.w     -[A7], D5
  862. 00000946  4267                     clr.w      -[A7]
  863. 00000948  486E FFF4                pea.l      [A6 - 0xC]
  864. 0000094C  4EBA 01AA                jsr        [PC + 0x1AA /* 00000AF8 */]
  865. 00000950  504F                     addq.w     A7, 8
  866. 00000952  6000 009A                bra        +0x9C /* 000009EE */
  867. label00000956:
  868. 00000956  362C 0030                move.w     D3, [A4 + 0x30]
  869. 0000095A  D66B 001A                add.w      D3, [A3 + 0x1A]
  870. 0000095E  3D43 FFF4                move.w     [A6 - 0xC], D3
  871. 00000962  486E FFF4                pea.l      [A6 - 0xC]
  872. 00000966  A8A3                     syscall    EraseRect
  873. 00000968  7854                     moveq.l    D4, 0x54
  874. label0000096A:
  875. 0000096A  3A2B 001C                move.w     D5, [A3 + 0x1C]
  876. 0000096E  3D6C 0032 FFF6           move.w     [A6 - 0xA], [A4 + 0x32]
  877. 00000974  362E FFFA                move.w     D3, [A6 - 0x6]
  878. 00000978  5343                     subq.w     D3, 1
  879. 0000097A  48C3                     ext.l      D3
  880. 0000097C  87C5                     divs.w     D3, D5
  881. 0000097E  4843                     swap.w     D3
  882. 00000980  976E FFFA                sub.w      [A6 - 0x6], D3
  883. 00000984  362C 0030                move.w     D3, [A4 + 0x30]
  884. 00000988  966B 0018                sub.w      D3, [A3 + 0x18]
  885. 0000098C  3D43 FFF4                move.w     [A6 - 0xC], D3
  886. 00000990  362C 0030                move.w     D3, [A4 + 0x30]
  887. 00000994  D66B 001A                add.w      D3, [A3 + 0x1A]
  888. 00000998  D66B 001E                add.w      D3, [A3 + 0x1E]
  889. 0000099C  3D43 FFF8                move.w     [A6 - 0x8], D3
  890. 000009A0  B87C 0054                cmp.w      D4, 0x54 /* 'T' */
  891. 000009A4  6608                     bne        +0xA /* 000009AE */
  892. 000009A6  486E FFF4                pea.l      [A6 - 0xC]
  893. 000009AA  A8A3                     syscall    EraseRect
  894. 000009AC  6040                     bra        +0x42 /* 000009EE */
  895. label000009AE:
  896. 000009AE  B87C 0057                cmp.w      D4, 0x57 /* 'W' */
  897. 000009B2  6602                     bne        +0x4 /* 000009B6 */
  898. 000009B4  4445                     neg.w      D5
  899. label000009B6:
  900. 000009B6  4267                     clr.w      -[A7]
  901. 000009B8  3F05                     move.w     -[A7], D5
  902. 000009BA  486E FFF4                pea.l      [A6 - 0xC]
  903. 000009BE  4EBA 0138                jsr        [PC + 0x138 /* 00000AF8 */]
  904. 000009C2  504F                     addq.w     A7, 8
  905. 000009C4  6028                     bra        +0x2A /* 000009EE */
  906. label000009C6:
  907. 000009C6  907C 003D                sub.w      D0, 0x3D /* '=' */
  908. 000009CA  6700 FF40                beq        -0xBE /* 0000090C */
  909. 000009CE  5140                     subq.w     D0, 8
  910. 000009D0  6700 FF4C                beq        -0xB2 /* 0000091E */
  911. 000009D4  907C 000C                sub.w      D0, 0xC
  912. 000009D8  6790                     beq        -0x6E /* 0000096A */
  913. 000009DA  5340                     subq.w     D0, 1
  914. 000009DC  6700 FF38                beq        -0xC6 /* 00000916 */
  915. 000009E0  5540                     subq.w     D0, 2
  916. 000009E2  6786                     beq        -0x78 /* 0000096A */
  917. 000009E4  5740                     subq.w     D0, 3
  918. 000009E6  6782                     beq        -0x7C /* 0000096A */
  919. 000009E8  5540                     subq.w     D0, 2
  920. 000009EA  6700 FF6A                beq        -0x94 /* 00000956 */
  921. label000009EE:
  922. 000009EE  532B 000D                subq.b     [A3 + 0xD], 1
  923. 000009F2  6050                     bra        +0x52 /* 00000A44 */
  924. 000009F4  3604                     move.w     D3, D4
  925. 000009F6  967C 0020                sub.w      D3, 0x20 /* ' ' */
  926. 000009FA  3743 0012                move.w     [A3 + 0x12], D3
  927. 000009FE  177C 0003 000D           move.b     [A3 + 0xD], 0x3
  928. 00000A04  603E                     bra        +0x40 /* 00000A44 */
  929. 00000A06  422B 000D                clr.b      [A3 + 0xD]
  930. 00000A0A  987C 0020                sub.w      D4, 0x20 /* ' ' */
  931. 00000A0E  362B 0016                move.w     D3, [A3 + 0x16]
  932. 00000A12  C6C4                     mulu.w     D3, D4
  933. 00000A14  5243                     addq.w     D3, 1
  934. 00000A16  3943 0032                move.w     [A4 + 0x32], D3
  935. 00000A1A  362B 0012                move.w     D3, [A3 + 0x12]
  936. 00000A1E  C6EB 0014                mulu.w     D3, [A3 + 0x14]
  937. 00000A22  D66B 0018                add.w      D3, [A3 + 0x18]
  938. 00000A26  3943 0030                move.w     [A4 + 0x30], D3
  939. 00000A2A  6018                     bra        +0x1A /* 00000A44 */
  940. 00000A2C  FD34                     .extension 0xD34 <<F/4-5/6>> // unimplemented
  941. 00000A2E  FEC4 FFB2                .extension 0xEC4 <<F/2-3/7>> // unimplemented
  942. 00000A32  FFC4                     .invalid   <<F/7/7>>
  943. label00000A34:
  944. 00000A34  B07C 0004                cmp.w      D0, 0x4
  945. 00000A38  640A                     bcc        +0xC /* 00000A44 */
  946. 00000A3A  E340                     asl        D0.w, 1
  947. 00000A3C  303B 00EE                move.w     D0, [PC + D0.w - 0x18]
  948. 00000A40  4EFB 0000                jmp        [PC + D0.w]
  949. label00000A44:
  950. 00000A44  362C 0016                move.w     D3, [A4 + 0x16]
  951. 00000A48  966B 001C                sub.w      D3, [A3 + 0x1C]
  952. 00000A4C  342C 0032                move.w     D2, [A4 + 0x32]
  953. 00000A50  B443                     cmp.w      D2, D3
  954. 00000A52  6F10                     ble        +0x12 /* 00000A64 */
  955. 00000A54  397C 0001 0032           move.w     [A4 + 0x32], 0x1
  956. 00000A5A  362B 0014                move.w     D3, [A3 + 0x14]
  957. 00000A5E  D76C 0030                add.w      [A4 + 0x30], D3
  958. 00000A62  600E                     bra        +0x10 /* 00000A72 */
  959. label00000A64:
  960. 00000A64  0C6C 0001 0032           cmpi.w     [A4 + 0x32], 0x1
  961. 00000A6A  6C06                     bge        +0x8 /* 00000A72 */
  962. 00000A6C  397C 0001 0032           move.w     [A4 + 0x32], 0x1
  963. label00000A72:
  964. 00000A72  3A2C 0030                move.w     D5, [A4 + 0x30]
  965. 00000A76  DA6B 001A                add.w      D5, [A3 + 0x1A]
  966. 00000A7A  BA6C 0014                cmp.w      D5, [A4 + 0x14]
  967. 00000A7E  6F32                     ble        +0x34 /* 00000AB2 */
  968. 00000A80  45EE FFF4                lea.l      A2, [A6 - 0xC]
  969. 00000A84  224C                     movea.l    A1, A4
  970. 00000A86  D3FC 0000 0010           add.l      A1, 0x10
  971. 00000A8C  24D9                     move.l     [A2]+, [A1]+
  972. 00000A8E  24D9                     move.l     [A2]+, [A1]+
  973. 00000A90  9A6E FFF8                sub.w      D5, [A6 - 0x8]
  974. 00000A94  3605                     move.w     D3, D5
  975. 00000A96  4443                     neg.w      D3
  976. 00000A98  3F03                     move.w     -[A7], D3
  977. 00000A9A  4267                     clr.w      -[A7]
  978. 00000A9C  486E FFF4                pea.l      [A6 - 0xC]
  979. 00000AA0  6156                     bsr        +0x58 /* 00000AF8 */
  980. 00000AA2  504F                     addq.w     A7, 8
  981. 00000AA4  362C 0014                move.w     D3, [A4 + 0x14]
  982. 00000AA8  966B 001A                sub.w      D3, [A3 + 0x1A]
  983. 00000AAC  3943 0030                move.w     [A4 + 0x30], D3
  984. 00000AB0  601C                     bra        +0x1E /* 00000ACE */
  985. label00000AB2:
  986. 00000AB2  362B 0014                move.w     D3, [A3 + 0x14]
  987. 00000AB6  966B 001A                sub.w      D3, [A3 + 0x1A]
  988. 00000ABA  342C 0030                move.w     D2, [A4 + 0x30]
  989. 00000ABE  B443                     cmp.w      D2, D3
  990. 00000AC0  6C0C                     bge        +0xE /* 00000ACE */
  991. 00000AC2  362B 0014                move.w     D3, [A3 + 0x14]
  992. 00000AC6  966B 001A                sub.w      D3, [A3 + 0x1A]
  993. 00000ACA  3943 0030                move.w     [A4 + 0x30], D3
  994. label00000ACE:
  995. 00000ACE  0C6E 0002 0012           cmpi.w     [A6 + 0x12], 0x2
  996. 00000AD4  6710                     beq        +0x12 /* 00000AE6 */
  997. 00000AD6  276C 0030 0008           move.l     [A3 + 0x8], [A4 + 0x30]
  998. 00000ADC  2947 0030                move.l     [A4 + 0x30], D7
  999. 00000AE0  396E FFFC 0048           move.w     [A4 + 0x48], [A6 - 0x4]
  1000. label00000AE6:
  1001. 00000AE6  2F0B                     move.l     -[A7], A3
  1002. 00000AE8  3F2E FFFE                move.w     -[A7], [A6 - 0x2]
  1003. 00000AEC  4EBA FB08                jsr        [PC - 0x4F8 /* 000005F6 */]
  1004. 00000AF0  5C4F                     addq.w     A7, 6
  1005. 00000AF2  7000                     moveq.l    D0, 0x00
  1006. 00000AF4  6000 FC50                bra        -0x3AE /* 00000746 */
  1007. fn00000AF8:
  1008. 00000AF8  4E56 FFFC                link       A6, -0x0004
  1009. 00000AFC  42A7                     clr.l      -[A7]
  1010. 00000AFE  A8D8                     syscall    NewRgn
  1011. 00000B00  201F                     move.l     D0, [A7]+
  1012. 00000B02  2D40 FFFC                move.l     [A6 - 0x4], D0
  1013. 00000B06  2F2E 0008                move.l     -[A7], [A6 + 0x8]
  1014. 00000B0A  3F2E 000C                move.w     -[A7], [A6 + 0xC]
  1015. 00000B0E  3F2E 000E                move.w     -[A7], [A6 + 0xE]
  1016. 00000B12  2F2E FFFC                move.l     -[A7], [A6 - 0x4]
  1017. 00000B16  A8EF                     syscall    ScrollRect
  1018. 00000B18  2F2E FFFC                move.l     -[A7], [A6 - 0x4]
  1019. 00000B1C  A8D9                     syscall    DisposRgn/DisposeRgn
  1020. 00000B1E  4E5E                     unlink     A6
  1021. 00000B20  4E75                     rts
  1022. fn00000B22:
  1023. 00000B22  4E56 FFF0                link       A6, -0x0010
  1024. 00000B26  48E7 0E18                movem.l    -[A7], D4,D5,D6,A3,A4
  1025. 00000B2A  266E 0008                movea.l    A3, [A6 + 0x8]
  1026. 00000B2E  286E 000C                movea.l    A4, [A6 + 0xC]
  1027. 00000B32  7C00                     moveq.l    D6, 0x00
  1028. 00000B34  3A13                     move.w     D5, [A3]
  1029. 00000B36  426E FFF0                clr.w      [A6 - 0x10]
  1030. label00000B3A:
  1031. 00000B3A  0C6E 0005 FFF0           cmpi.w     [A6 - 0x10], 0x5
  1032. 00000B40  660E                     bne        +0x10 /* 00000B50 */
  1033. 00000B42  4A46                     tst.w      D6
  1034. 00000B44  660A                     bne        +0xC /* 00000B50 */
  1035. 00000B46  7000                     moveq.l    D0, 0x00
  1036. label00000B48:
  1037. 00000B48  4CDF 1870                movem.l    D4,D5,D6,A3,A4, [A7]+
  1038. 00000B4C  4E5E                     unlink     A6
  1039. 00000B4E  4E75                     rts
  1040. label00000B50:
  1041. 00000B50  4267                     clr.w      -[A7]
  1042. 00000B52  3F3C 0028                move.w     -[A7], 0x28 /* '(' */
  1043. 00000B56  486E FFF0                pea.l      [A6 - 0x10]
  1044. 00000B5A  A970                     syscall    GetNextEvent
  1045. 00000B5C  101F                     move.b     D0, [A7]+
  1046. 00000B5E  4880                     ext.w      D0
  1047. 00000B60  4A40                     tst.w      D0
  1048. 00000B62  660A                     bne        +0xC /* 00000B6E */
  1049. 00000B64  4A46                     tst.w      D6
  1050. 00000B66  6604                     bne        +0x6 /* 00000B6C */
  1051. 00000B68  7000                     moveq.l    D0, 0x00
  1052. 00000B6A  60DC                     bra        -0x22 /* 00000B48 */
  1053. label00000B6C:
  1054. 00000B6C  60E2                     bra        -0x1C /* 00000B50 */
  1055. label00000B6E:
  1056. 00000B6E  7C00                     moveq.l    D6, 0x00
  1057. 00000B70  246B 002C                movea.l    A2, [A3 + 0x2C]
  1058. 00000B74  D5FC 0000 0080           add.l      A2, 0x80
  1059. 00000B7A  226B 0024                movea.l    A1, [A3 + 0x24]
  1060. 00000B7E  B3CA                     cmpa.l     A1, A2
  1061. 00000B80  6612                     bne        +0x14 /* 00000B94 */
  1062. 00000B82  276B 002C 0028           move.l     [A3 + 0x28], [A3 + 0x2C]
  1063. 00000B88  276B 002C 0024           move.l     [A3 + 0x24], [A3 + 0x2C]
  1064. 00000B8E  276B 002C 0020           move.l     [A3 + 0x20], [A3 + 0x2C]
  1065. label00000B94:
  1066. 00000B94  262E FFF2                move.l     D3, [A6 - 0xE]
  1067. 00000B98  C6BC 0000 007F           and.l      D3, 0x7F
  1068. 00000B9E  3803                     move.w     D4, D3
  1069. 00000BA0  3605                     move.w     D3, D5
  1070. 00000BA2  C67C 0400                and.w      D3, 0x400
  1071. 00000BA6  667A                     bne        +0x7C /* 00000C22 */
  1072. 00000BA8  B87C 0060                cmp.w      D4, 0x60 /* '`' */
  1073. 00000BAC  6602                     bne        +0x4 /* 00000BB0 */
  1074. 00000BAE  781B                     moveq.l    D4, 0x1B
  1075. label00000BB0:
  1076. 00000BB0  362E FFFE                move.w     D3, [A6 - 0x2]
  1077. 00000BB4  C67C 0100                and.w      D3, 0x100
  1078. 00000BB8  6768                     beq        +0x6A /* 00000C22 */
  1079. 00000BBA  3004                     move.w     D0, D4
  1080. 00000BBC  6040                     bra        +0x42 /* 00000BFE */
  1081. label00000BBE:
  1082. 00000BBE  7860                     moveq.l    D4, 0x60
  1083. 00000BC0  6060                     bra        +0x62 /* 00000C22 */
  1084. label00000BC2:
  1085. 00000BC2  787F                     moveq.l    D4, 0x7F
  1086. 00000BC4  605C                     bra        +0x5E /* 00000C22 */
  1087. label00000BC6:
  1088. 00000BC6  3604                     move.w     D3, D4
  1089. 00000BC8  967C 0030                sub.w      D3, 0x30 /* '0' */
  1090. 00000BCC  3F03                     move.w     -[A7], D3
  1091. 00000BCE  42A7                     clr.l      -[A7]
  1092. 00000BD0  4EBA 0062                jsr        [PC + 0x62 /* 00000C34 */]
  1093. 00000BD4  5C4F                     addq.w     A7, 6
  1094. 00000BD6  6000 FF62                bra        -0x9C /* 00000B3A */
  1095. label00000BDA:
  1096. 00000BDA  7C01                     moveq.l    D6, 0x01
  1097. label00000BDC:
  1098. 00000BDC  6000 FF5C                bra        -0xA2 /* 00000B3A */
  1099. label00000BE0:
  1100. 00000BE0  276B 002C 0028           move.l     [A3 + 0x28], [A3 + 0x2C]
  1101. 00000BE6  276B 002C 0024           move.l     [A3 + 0x24], [A3 + 0x2C]
  1102. 00000BEC  276B 002C 0020           move.l     [A3 + 0x20], [A3 + 0x2C]
  1103. 00000BF2  7001                     moveq.l    D0, 0x01
  1104. 00000BF4  6000 FF52                bra        -0xAC /* 00000B48 */
  1105. label00000BF8:
  1106. 00000BF8  C87C 001F                and.w      D4, 0x1F
  1107. 00000BFC  6024                     bra        +0x26 /* 00000C22 */
  1108. label00000BFE:
  1109. 00000BFE  5140                     subq.w     D0, 8
  1110. 00000C00  67C0                     beq        -0x3E /* 00000BC2 */
  1111. 00000C02  907C 0013                sub.w      D0, 0x13
  1112. 00000C06  67B6                     beq        -0x48 /* 00000BBE */
  1113. 00000C08  907C 0013                sub.w      D0, 0x13
  1114. 00000C0C  67D2                     beq        -0x2C /* 00000BE0 */
  1115. 00000C0E  5740                     subq.w     D0, 3
  1116. 00000C10  67B4                     beq        -0x4A /* 00000BC6 */
  1117. 00000C12  5340                     subq.w     D0, 1
  1118. 00000C14  67B0                     beq        -0x4E /* 00000BC6 */
  1119. 00000C16  907C 003F                sub.w      D0, 0x3F /* '?' */
  1120. 00000C1A  67C0                     beq        -0x3E /* 00000BDC */
  1121. 00000C1C  5540                     subq.w     D0, 2
  1122. 00000C1E  67BA                     beq        -0x44 /* 00000BDA */
  1123. 00000C20  60D6                     bra        -0x28 /* 00000BF8 */
  1124. label00000C22:
  1125. 00000C22  246B 0024                movea.l    A2, [A3 + 0x24]
  1126. 00000C26  52AB 0024                addq.l     [A3 + 0x24], 1
  1127. 00000C2A  1484                     move.b     [A2], D4
  1128. 00000C2C  6000 FF0C                bra        -0xF2 /* 00000B3A */
  1129. 00000C30  6000 FF16                bra        -0xE8 /* 00000B48 */
  1130. fn00000C34:
  1131. 00000C34  4E56 FFC0                link       A6, -0x0040
  1132. 00000C38  41EE FFC0                lea.l      A0, [A6 - 0x40]
  1133. 00000C3C  216E 0008 0012           move.l     [A0 + 0x12], [A6 + 0x8]
  1134. 00000C42  316E 000C 0016           move.w     [A0 + 0x16], [A6 + 0xC]
  1135. 00000C48  A017                     syscall    Eject
  1136. 00000C4A  4E5E                     unlink     A6
  1137. 00000C4C  4E75                     rts
  1138. fn00000C4E:
  1139. 00000C4E  A11A                     syscall    GetZone, flags=1
  1140. 00000C50  4EFA 0076                jmp        [PC + 0x76 /* 00000CC8 */]
  1141. fn00000C54:
  1142. 00000C54  206F 0004                movea.l    A0, [A7 + 0x4]
  1143. 00000C58  A029                     syscall    HLock
  1144. 00000C5A  4EFA 007E                jmp        [PC + 0x7E /* 00000CDA */]
  1145. fn00000C5E:
  1146. 00000C5E  206F 0004                movea.l    A0, [A7 + 0x4]
  1147. 00000C62  A04A                     syscall    HNoPurge
  1148. 00000C64  4EFA 0074                jmp        [PC + 0x74 /* 00000CDA */]
  1149. fn00000C68:
  1150. 00000C68  206F 0004                movea.l    A0, [A7 + 0x4]
  1151. 00000C6C  A02A                     syscall    HUnlock
  1152. 00000C6E  4EFA 006A                jmp        [PC + 0x6A /* 00000CDA */]
  1153. fn00000C72:
  1154. 00000C72  202F 0004                move.l     D0, [A7 + 0x4]
  1155. 00000C76  A122                     syscall    NewHandle, flags=1
  1156. 00000C78  4EFA 004E                jmp        [PC + 0x4E /* 00000CC8 */]
  1157. fn00000C7C:
  1158. 00000C7C  206F 0004                movea.l    A0, [A7 + 0x4]
  1159. 00000C80  A01B                     syscall    SetZone
  1160. 00000C82  4EFA 0056                jmp        [PC + 0x56 /* 00000CDA */]
  1161. fn00000C86:
  1162. 00000C86  2038 02A6                move.l     D0, [0x000002A6 /* SysZone */]
  1163. 00000C8A  4EFA 0046                jmp        [PC + 0x46 /* 00000CD2 */]
  1164. fn00000C8E:
  1165. 00000C8E  206F 0004                movea.l    A0, [A7 + 0x4]
  1166. 00000C92  226F 0008                movea.l    A1, [A7 + 0x8]
  1167. 00000C96  302F 000C                move.w     D0, [A7 + 0xC]
  1168. 00000C9A  B3C8                     cmpa.l     A1, A0
  1169. 00000C9C  6602                     bne        +0x4 /* 00000CA0 */
  1170. 00000C9E  4E75                     rts
  1171. label00000CA0:
  1172. 00000CA0  6310                     bls        +0x12 /* 00000CB2 */
  1173. 00000CA2  D0C0                     add.w      A0, D0
  1174. 00000CA4  D2C0                     add.w      A1, D0
  1175. 00000CA6  5340                     subq.w     D0, 1
  1176. 00000CA8  6B06                     bmi        +0x8 /* 00000CB0 */
  1177. label00000CAA:
  1178. 00000CAA  1320                     move.b     -[A1], -[A0]
  1179. 00000CAC  51C8 FFFC                dbf        D0, -0x6 /* 00000CAA */
  1180. label00000CB0:
  1181. 00000CB0  4E75                     rts
  1182. label00000CB2:
  1183. 00000CB2  5340                     subq.w     D0, 1
  1184. 00000CB4  6BFA                     bmi        -0x4 /* 00000CB0 */
  1185. label00000CB6:
  1186. 00000CB6  12D8                     move.b     [A1]+, [A0]+
  1187. 00000CB8  51C8 FFFC                dbf        D0, -0x6 /* 00000CB6 */
  1188. 00000CBC  4E75                     rts
  1189. fn00000CBE:
  1190. 00000CBE  202F 0004                move.l     D0, [A7 + 0x4]
  1191. 00000CC2  A11E                     syscall    NewPtr, flags=1
  1192. 00000CC4  4EFA 0002                jmp        [PC + 0x2 /* 00000CC8 */]
  1193. label00000CC8:
  1194. 00000CC8  43FA F368                lea.l      A1, [PC - 0xC98 /* 00000032, value 0x4E56 'NV', cstring "" */]
  1195. 00000CCC  3280                     move.w     [A1], D0
  1196. 00000CCE  2008                     move.l     D0, A0
  1197. 00000CD0  4E75                     rts
  1198. label00000CD2:
  1199. 00000CD2  43FA F35E                lea.l      A1, [PC - 0xCA2 /* 00000032, value 0x4E56 'NV', cstring "" */]
  1200. 00000CD6  4251                     clr.w      [A1]
  1201. 00000CD8  4E75                     rts
  1202. label00000CDA:
  1203. 00000CDA  43FA F356                lea.l      A1, [PC - 0xCAA /* 00000032, value 0x4E56 'NV', cstring "" */]
  1204. 00000CDE  3280                     move.w     [A1], D0
  1205. 00000CE0  4E75                     rts
  1206.